import 'dart:convert';

import 'package:crypto/crypto.dart';
import 'package:get/get.dart';

extension ExString on String {
  String trp(List<String> params) {
    var map = params.asMap().map((index, value) {
      // params or params1 params2
      String key = params.length > 1 ? "@params${index + 1}" : "params";

      return MapEntry(key, value);
    });
    return trParams(map);
  }

  /**
   * 安全的将字符串转成数字
   */
  double toDouble({double defaultV = 0.0}) {
    return double.tryParse(this) ?? defaultV;
  }

  int toInt({int defaultV = 0}) {
    return int.tryParse(this) ?? defaultV;
  }

  /// md5加密
  String toMd5() {
    return md5.convert(utf8.encode(this)).toString();
  }
}
